//package com.mtk.launcher.test;
//
//import android.app.Activity;
//import android.content.Intent;
//import android.os.Bundle;
//import android.view.View;
//import android.widget.Button;
//import android.widget.CheckBox;
//import android.widget.CompoundButton;
//import android.widget.LinearLayout;
//import android.widget.NumberPicker;
//import android.widget.RadioButton;
//import android.widget.RadioGroup;
//import android.widget.TextView;
//import android.widget.Toast;
//
//import com.mtk.launcher.R;
//import com.mtk.launcher.bean.ScheduleConfig;
//import com.mtk.launcher.bean.ScheduleType;
//import com.mtk.launcher.service.PowerControlService;
//
//public class PowerControlActivity extends Activity {
//    private ScheduleConfig bootConfig;
//    private ScheduleConfig shutdownConfig;
//
//    private LinearLayout dailyLayout;
//    private LinearLayout weeklyLayout;
//    private LinearLayout networkLayout;
//
//    private CheckBox[] weekdayCheckboxes;
//    private NumberPicker hourPicker;
//    private NumberPicker minutePicker;
//
//    private TextView serverAddrText;
//    private NumberPicker serverPortPicker;
//
//    private boolean isBootConfig = true;
//
//    @Override
//    protected void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//        setContentView(R.layout.activity_power_control);
//
//        // 加载配置
//        loadConfig();
//
//        // 初始化UI组件
//        initUI();
//
//        // 显示开机配置
//        showConfig(bootConfig, true);
//    }
//
//    private void initUI() {
//        // 初始化时间选择器
//        hourPicker = findViewById(R.id.hour_picker);
//        hourPicker.setMinValue(0);
//        hourPicker.setMaxValue(23);
//
//        minutePicker = findViewById(R.id.minute_picker);
//        minutePicker.setMinValue(0);
//        minutePicker.setMaxValue(59);
//        minutePicker.setDisplayedValues(createMinuteDisplayValues());
//
//        // 初始化周选择器
//        weekdayCheckboxes = new CheckBox[7];
//        weekdayCheckboxes[0] = findViewById(R.id.sunday_checkbox);
//        weekdayCheckboxes[1] = findViewById(R.id.monday_checkbox);
//        weekdayCheckboxes[2] = findViewById(R.id.tuesday_checkbox);
//        weekdayCheckboxes[3] = findViewById(R.id.wednesday_checkbox);
//        weekdayCheckboxes[4] = findViewById(R.id.thursday_checkbox);
//        weekdayCheckboxes[5] = findViewById(R.id.friday_checkbox);
//        weekdayCheckboxes[6] = findViewById(R.id.saturday_checkbox);
//
//        // 初始化网络设置
//        serverAddrText = findViewById(R.id.server_address_text);
//        serverPortPicker = findViewById(R.id.server_port_picker);
//        serverPortPicker.setMinValue(1);
//        serverPortPicker.setMaxValue(65535);
//        serverPortPicker.setValue(8080);
//
//        // 初始化类型选择器
//        RadioGroup typeRadioGroup = findViewById(R.id.type_radio_group);
//        typeRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
//            @Override
//            public void onCheckedChanged(RadioGroup group, int checkedId) {
//                updateTypeUI();
//            }
//        });
//
//        // 初始化布局
//        dailyLayout = findViewById(R.id.daily_layout);
//        weeklyLayout = findViewById(R.id.weekly_layout);
//        networkLayout = findViewById(R.id.network_layout);
//
//        // 初始化开关按钮
//        CheckBox enableCheckbox = findViewById(R.id.enable_checkbox);
//        enableCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
//            @Override
//            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
//                updateEnableUI(isChecked);
//            }
//        });
//
//        // 初始化保存按钮
//        Button saveButton = findViewById(R.id.save_button);
//        saveButton.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                saveConfig();
//            }
//        });
//
//        // 初始化切换按钮
//        Button switchButton = findViewById(R.id.switch_button);
//        switchButton.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                isBootConfig = !isBootConfig;
//                showConfig(isBootConfig ? bootConfig : shutdownConfig, isBootConfig);
//            }
//        });
//    }
//
//    private String[] createMinuteDisplayValues() {
//        String[] values = new String[60];
//        for (int i = 0; i < 60; i++) {
//            values[i] = String.format("%02d", i);
//        }
//        return values;
//    }
//
//    private void loadConfig() {
//        // 实际应用中应该从文件或数据库加载配置
//        // 这里简化处理，使用默认值
//
//        // 开机配置
//        bootConfig = new ScheduleConfig();
//        bootConfig.setEnabled(false);
//        bootConfig.setHour(7);
//        bootConfig.setMinute(0);
//        bootConfig.setType(ScheduleType.DAILY);
//
//        // 关机配置
//        shutdownConfig = new ScheduleConfig();
//        shutdownConfig.setEnabled(false);
//        shutdownConfig.setHour(23);
//        shutdownConfig.setMinute(0);
//        shutdownConfig.setType(ScheduleType.DAILY);
//    }
//
//    private void showConfig(ScheduleConfig config, boolean isBoot) {
//        CheckBox enableCheckbox = findViewById(R.id.enable_checkbox);
//        enableCheckbox.setChecked(config.isEnabled());
//        updateEnableUI(config.isEnabled());
//
//        hourPicker.setValue(config.getHour());
//        minutePicker.setValue(config.getMinute());
//
//        RadioButton dailyRadio = findViewById(R.id.daily_radio);
//        RadioButton weeklyRadio = findViewById(R.id.weekly_radio);
//        RadioButton networkRadio = findViewById(R.id.network_radio);
//
//        switch (config.getType()) {
//            case DAILY:
//                dailyRadio.setChecked(true);
//                break;
//            case WEEKLY:
//                weeklyRadio.setChecked(true);
//                break;
//            case NETWORK:
//                networkRadio.setChecked(true);
//                break;
//        }
//
//        updateTypeUI();
//
//        // 更新周选择器
//        if (config.getType() == ScheduleType.WEEKLY) {
//            boolean[] weekdays = config.getWeekdays();
//            for (int i = 0; i < 7; i++) {
//                weekdayCheckboxes[i].setChecked(weekdays[i]);
//            }
//        }
//
//        // 更新网络设置
//        if (config.getType() == ScheduleType.NETWORK) {
//            serverAddrText.setText(config.getServer());
//            serverPortPicker.setValue(config.getPort());
//        }
//
//        // 更新标题
//        TextView titleText = findViewById(R.id.title_text);
//        titleText.setText(isBoot ? "开机定时设置" : "关机定时设置");
//
//        // 更新切换按钮文本
//        Button switchButton = findViewById(R.id.switch_button);
//        switchButton.setText(isBoot ? "切换到关机设置" : "切换到开机设置");
//
//        isBootConfig = isBoot;
//    }
//
//    private void updateEnableUI(boolean enabled) {
//        hourPicker.setEnabled(enabled);
//        minutePicker.setEnabled(enabled);
//
//        RadioButton dailyRadio = findViewById(R.id.daily_radio);
//        RadioButton weeklyRadio = findViewById(R.id.weekly_radio);
//        RadioButton networkRadio = findViewById(R.id.network_radio);
//
//        dailyRadio.setEnabled(enabled);
//        weeklyRadio.setEnabled(enabled);
//        networkRadio.setEnabled(enabled);
//
//        updateTypeUI();
//    }
//
//    private void updateTypeUI() {
//        RadioButton dailyRadio = findViewById(R.id.daily_radio);
//        RadioButton weeklyRadio = findViewById(R.id.weekly_radio);
//        RadioButton networkRadio = findViewById(R.id.network_radio);
//
//        boolean enabled = ((CheckBox) findViewById(R.id.enable_checkbox)).isChecked();
//
//        dailyLayout.setVisibility(dailyRadio.isChecked() && enabled ? View.VISIBLE : View.GONE);
//        weeklyLayout.setVisibility(weeklyRadio.isChecked() && enabled ? View.VISIBLE : View.GONE);
//        networkLayout.setVisibility(networkRadio.isChecked() && enabled ? View.VISIBLE : View.GONE);
//
//        // 启用/禁用周选择器
//        for (CheckBox checkbox : weekdayCheckboxes) {
//            checkbox.setEnabled(weeklyRadio.isChecked() && enabled);
//        }
//
//        // 启用/禁用网络设置
//        serverAddrText.setEnabled(networkRadio.isChecked() && enabled);
//        serverPortPicker.setEnabled(networkRadio.isChecked() && enabled);
//    }
//
//    private void saveConfig() {
//        ScheduleConfig config = isBootConfig ? bootConfig : shutdownConfig;
//
//        // 获取基本设置
//        config.setEnabled(((CheckBox) findViewById(R.id.enable_checkbox)).isChecked());
//        config.setHour(hourPicker.getValue());
//        config.setMinute(minutePicker.getValue());
//
//        // 获取类型设置
//        RadioButton dailyRadio = findViewById(R.id.daily_radio);
//        RadioButton weeklyRadio = findViewById(R.id.weekly_radio);
//
//        if (dailyRadio.isChecked()) {
//            config.setType(ScheduleType.DAILY);
//        } else if (weeklyRadio.isChecked()) {
//            config.setType(ScheduleType.WEEKLY);
//        } else {
//            config.setType(ScheduleType.NETWORK);
//        }
//
//        // 获取周设置
//        if (config.getType() == ScheduleType.WEEKLY) {
//            boolean[] weekdays = new boolean[7];
//            for (int i = 0; i < 7; i++) {
//                weekdays[i] = weekdayCheckboxes[i].isChecked();
//            }
//            config.setWeekdays(weekdays);
//        }
//
//        // 获取网络设置
//        if (config.getType() == ScheduleType.NETWORK) {
//            config.setServer(serverAddrText.getText().toString());
//            config.setPort(serverPortPicker.getValue());
//        }
//
//        // 实际应用中应该保存到文件或数据库
//        // 这里简化处理，显示保存成功提示
//
//        Toast.makeText(this, isBootConfig ? "开机设置已保存" : "关机设置已保存",
//            Toast.LENGTH_SHORT).show();
//
//        // 启动服务（如果未启动）
//        startService(new Intent(this, PowerControlService.class));
//    }
//}